<?php
/**
 * 
 * Форма настройки сайта
 * @author andrew
 *
 */
class Default_Form_Settings extends Zend_Form {

	public function init() {
		$this->setMethod('post');
		
		$own_username = $this->createElement('text', 'own_username');
		$own_username->setLabel(_('Имя владельца сайта'));
		$own_username->setAttrib('size', '32');
		$own_username->setAttrib('maxlength', '255');
		$own_username->addFilters(array('StringTrim','StripTags'));
		$own_username->setRequired(true);
		
		$own_email = $this->createElement('text', 'own_email');
		$own_email->setLabel(_('Email владельца сайта:'));
		$own_email->setAttrib('size', '32');
		$own_email->setAttrib('maxlength', '255');
		$own_email->addFilters(array('StringTrim','StripTags'));
		$own_email->addValidator('EmailAddress',true);
		$own_email->setRequired(true);
		
		$redirect = $this->createElement('radio', 'redirect');
		$redirect->setLabel(_('Перенаправлять письма на список Email:'));
		$redirect->addMultiOptions(array('1' => _('Да'), '0' => _('Нет')));
		$redirect->setSeparator(' ');
		$redirect->setValue('1');
		
		$emails = $this->createElement('textarea', 'emails');
		$emails->setLabel(_('Список Email через запятую, на которые будет перенаправлены письма:'));
		$emails->setAttrib('cols', '48');
		$emails->setAttrib('rows', '8');
		$emails->setRequired(false);
		
		$is_smtp = $this->createElement('radio', 'is_smtp');
		$is_smtp->setLabel(_('Отправка почты с сайта через:'));
		$is_smtp->addMultiOptions(array('1' => _('Протокол SMTP'), '0' => _('mail функцию')));
		$is_smtp->setSeparator(' ');
		$is_smtp->setValue('0');
		
		$smtp_host = $this->createElement('text', 'smtp_host');
		$smtp_host->setLabel(_('SMTP хост:'));
		$smtp_host->setAttrib('size', '32');
		$smtp_host->setAttrib('maxlength', '255');
		$smtp_host->addFilters(array('StringTrim','StripTags'));
		
		$smtp_login = $this->createElement('text', 'smtp_login');
		$smtp_login->setLabel(_('SMTP логин:'));
		$smtp_login->setAttrib('size', '32');
		$smtp_login->setAttrib('maxlength', '255');
		$smtp_login->addFilters(array('StringTrim','StripTags'));
		
		$smtp_password = $this->createElement('text', 'smtp_password');
		$smtp_password->setLabel(_('SMTP пароль:'));
		$smtp_password->setAttrib('size', '32');
		$smtp_password->setAttrib('maxlength', '255');
		
		$subFormDescription = new Zend_Form_SubForm();
        $subFormDescription->removeDecorator('Fieldset');
        $subFormKeywords = new Zend_Form_SubForm();
        $subFormKeywords->removeDecorator('Fieldset');
        
        $locales = Zend_Controller_Front::getInstance()->getParam('bootstrap')->getOption('locales');
		$defaultLang = key($locales);
		
		foreach($locales as $lang=>$value) {
			$description = new Zend_Form_Element_Textarea($lang);
			$description->setLabel(strtoupper($lang) . ' ' . _('Мета описание главной страницы:'));
			$description->setAttrib('cols', '48');
			$description->setAttrib('rows', '8');
			$description->setFilters(array('StringTrim'));
			
			$keywords = new Zend_Form_Element_Textarea($lang);
			$keywords->setLabel(strtoupper($lang) . ' ' . _('Мета ключевые слова главной страницы:'));
			$keywords->setAttrib('cols', '48');
			$keywords->setAttrib('rows', '8');
			$keywords->setFilters(array('StringTrim'));
			
			if($defaultLang == $lang) {
				$description->setRequired(true);
				$keywords->setRequired(true);
			}
			
			$subFormDescription->addElement($description);
			$subFormKeywords->addElement($keywords);
		}
		
		$submit = $this->createElement('submit', 'submit');
		$submit->setLabel(_('Сохранить'));
		
		$this->addElements(array($own_username,$own_email,$redirect,$emails,$is_smtp,$smtp_host,$smtp_login,$smtp_password));
		
		$this->addSubForm($subFormDescription, 'description');
		$this->addSubForm($subFormKeywords, 'keywords');
		
		$this->addElement($submit);
		
	}
}